import api from '../api';

export default function(delayTime, id) {
  //应该返回Promise
  // delayTime = 10; //debug
  // id = "U3ODAJBD1R2W7B4KF6IFRQQO5"; //debug
  return new Promise(function(resolve, reject) {
    let maxCount = +(delayTime / 5);


    let timer = setInterval(fn, 5000)

    function fn() {
      maxCount--;
      if (maxCount < 0) {
        clearInterval(timer);
        timer = null;
        reject({
          msg: "超时"
        });
      }

      api.getOrder({
        id: id
      }).then(response => {
        const result = response.data;
        if (result.code == 200) {
          if (result.data.processStatus && result.data.processStatus
            .status == "received") {
            clearInterval(timer);
            timer = null;
            resolve(result.data);
          } else {
            //继续执行
          }
        }
        // else {
        //   clearInterval(timer);
        //   timer = null;
        //   reject({
        //     data: result,
        //     msg: "请求出错"
        //   });
        // }
      }, response => {
        clearInterval(timer);
        timer = null;
        reject(response.data);
      })
    }


  })
}

//
// const fn = function() {
//   maxCount--;
//   if (maxCount < 0) {
//     clearInterval(timer);
//     timer = null;
//     resolve("超时了");
//   }
// api.getOrder({
//   id: data.id
// }).then(response => {
//     if (response.data.code == 200) {
//       if (response.data.data.processStatus.status == "received") {
//         clearInterval(timer);
//         timer = null;
//         resolve(response.data.data);
//       } else {
//         //继续执行
//
//       }
//     } else {
//       clearInterval(timer);
//       reject(response.data);
//     }
//   }, response => {
//     clearInterval(timer);
//     reject(response);
//   }
// }
